# -*- coding: utf-8 -*-
# vim: ft=jinja

{## Start with  defaults from defaults.sls ##}
{% import_yaml 'sysctl/defaults.yml' as default_settings %}

{% set sysctl_lookup = salt['pillar.get']('sysctl:lookup', {}).copy() %}

{% if sysctl_lookup.params is defined %}
{% do sysctl_lookup.pop('params') %}
{% endif %}

{% if sysctl_lookup.params2 is defined %}
{% do sysctl_lookup.pop('params2') %}
{% endif %}

{## setup variable using grains['os_family'] based logic ##}
{% set os_family_map = salt['grains.filter_by']({
        'Arch': {},
        'RedHat': {
            "config": {
                "location": '/etc/sysctl.conf',
            }
        },
        'Suse': {
            "pkg": "procps",
        },
        'Debian': {
            "pkg": "procps",
         },
  },
  grain="os_family",
  merge=sysctl_lookup)
%}

{## Merge the flavor_map to the default settings ##}
{% do default_settings.sysctl.update(os_family_map) %}

{## Merge in sysctl pillar ##}
{% set sysctl_settings = salt['pillar.get'](
        'sysctl',
        default=default_settings.sysctl,
        merge=True
    )
%}
